package com.yigo.cuc.domain.customer.aggregateroot;

import com.yigo.cuc.domain.customer.entity.DeliveryAddress;
import com.yigo.cuc.domain.customer.valueobject.CustomerEmail;
import com.yigo.cuc.domain.customer.valueobject.CustomerPassword;
import com.yigo.cuc.domain.customer.valueobject.CustomerPhone;
import com.yigo.cuc.domain.customer.valueobject.CustomerUserName;
import com.yigo.framework.annotation.AggregateRoot;
import com.yigo.framework.base.BaseEntity;
import com.yigo.framework.snapshot.DmoSnapshot;
import lombok.Data;

import java.util.*;

/**
 * @author chenzl
 */
@Data
@AggregateRoot
public class Customer extends BaseEntity {
    /**
     * 主键Id
     */
    private Long id;
    /**
     * 用户名
     */
    private CustomerUserName userName;
    /**
     * 昵称
     */
    private String nickName;
    /**
     * 密码
     */
    private CustomerPassword password;
    /**
     * 手机号
     */
    private CustomerPhone phone;
    /**
     * 邮箱
     */
    private CustomerEmail email;
    /**
     * 默认收件地址
     */
    private DeliveryAddress defaultAddress;
    /**
     * 收件地址列表
     */
    private List<DeliveryAddress> defaultAddressList;
}
